package com.dyh.quickdemo.demos.spy;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
import java.util.List;
import java.util.function.Function;

/*
@Author=Joey Wheeler
@Date=2020/12/1 17:31
*/
//@Target(ElementType.LOCAL_VARIABLE)
//@Retention(RetentionPolicy.SOURCE)
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface SpyAnno {
    Func fun();
    //int i();
   //Integer i ();
    //List<String> list();
    // Object obj ();
    //  Function<String,Integer> fun();
    enum  Func{

        De(e->e);
        Function fun;
        Func(Function fun){
            this.fun = fun;
        }
   }
}
